Other Protocols

The following protocols are available globally.

  • Any type that implements this protocol can be used to configure application with TestLauncher. Type conforming to this protocol should override default implementation of launchArguments or launchEnvironments. Choice depends on which type of configuration option it represents. For more info about launch arguments and environment variables check: here

    See more

    Declaration

    Swift

    public protocol LaunchOption
  • Types implementing this protocol can be configured with launch options and variables by the TestLauncher.

    See more

    Declaration

    Swift

    public protocol Application
  • Protocol used to identify object, eg. PageObject, in the view hierarchy.

    Example:

    open class MainPage: BaseAppPage {
        open var tableView: XCUIElement {
            return view.tables["tableView"]
        }
    }
    
    extension MainPage: IdentifiableByElement {
        public var identifingElement: XCUIElement {
            return tableView
        }
    }
    
    See more

    Declaration

    Swift

    public protocol IdentifiableByElement
  • Protocol for types that implement descendantsMatchingType method.

    See more

    Declaration

    Swift

    public protocol DescendantsMatching